package com.hb.web;

import org.springframework.web.bind.annotation.ControllerAdvice;
import org.springframework.web.bind.annotation.ExceptionHandler;

// 在带有 @ControllerAdvice 注解的类中，@ExceptionHandler 注解标注的方法、@InitBinder 注解标注的方法、@ModelAttribute 注解标注的方法
// 会运用到整个应用程序所有控制器中带有 @RequestMapping 注解的方法上
@ControllerAdvice
public class AppWideExceptionHandler {
    // 任意的控制器方法抛出了 DuplicateSpittleException，不管这个方法位于哪个控制器中，都会调用这个 duplicateSpittleHandler() 来处理异常
    @ExceptionHandler(DuplicateSpittleException.class)
    public String duplicateSpittleHandler() {
        return "error/duplicate";
    }
}
